package com.dao.sale;

import com.model.sale.SkuMasterModel;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import com.model.sale.VO.SaleSkuMMVO;
import org.apache.ibatis.annotations.Param;

public interface SkuMasterDao {

    /**
     * 新增
     *
     * @author chenjun
     * @date 2022/03/10
     **/
    int insert(SkuMasterModel skuMasterModel);


    int deleteBySkuId(String skuId);

    List<SkuMasterModel> selectBySkuId(String skuId);

    /**
     * 刪除
     *
     * @author chenjun
     * @date 2022/03/10
     **/
    int delete(@Param("skuId") String skuId);

    /**
     * 更新
     *
     * @author chenjun
     * @date 2022/03/10
     **/
    int update(SkuMasterModel skuMasterModel);

    /**
     * 查询 根据主键 id 查询
     *
     * @author chenjun
     * @date 2022/03/10
     **/
    SaleSkuMMVO load(@Param("skuNum") String skuNum, @Param("skuFactory") String skuFactory);


    // 列表
    List<SkuMasterModel> selectList(Map<String, Object> map);

    // 列表
    List<Map> selectListWithWeight(Map<String, Object> map);
    int selectListWithWeightCount(Map<String, Object> map);

    // 列表总数
    int selectListCount(Map<String, Object> map);

    /**
     * 冻结SKU
     *
     * @author chenjun
     * @date 2022/03/10
     **/
    int freeze(@Param("skuNum") String skuCode);
}